home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_300 / 398_01 / t6808s.asm < prev    next >
Encoding:
Assembly Source File  |  1993-08-06  |  7.5 KB  |  398 lines

  1.     .title    AS6808 Sequential Test
  2.  
  3.     ;    This is the AS6805 Sequential Test file
  4.     ;    t6805s.asm updated to include the 68HC08
  5.     ;    instructions.
  6.  
  7.     .area    DIRECT
  8.  
  9.     .setdp    0,DIRECT
  10.  
  11.     bit0    =    0
  12.     bit1    =    1
  13.     bit2    =    2
  14.     bit3    =    3
  15.     bit4    =    4
  16.     bit5    =    5
  17.     bit6    =    6
  18.     bit7    =    7
  19.  
  20.     ext = 0x0123
  21.     ix2 = 0xABCD
  22.     ix1 = 0x00EF
  23.  
  24. begin:    .byte    0
  25. loca:    .byte    0
  26. locb:    .byte    0
  27. locc:    .byte    0
  28. locd:    .byte    0
  29. loce:    .byte    0
  30.  
  31.  
  32.     .area    AS6808A
  33.  
  34. 1$:    jsr    18$        ; CD __ __
  35.     jmp    18$        ; CC __ __
  36.     sub    18$        ; C0 __ __
  37.  
  38.     jsr    19$        ; CD 00 00
  39.     jmp    20$        ; CC 00 03
  40.     sub    21$        ; C0 00 06
  41.  
  42.  
  43.     .page
  44.  
  45.     . = 1$+256
  46.  
  47. 2$:    brset    #bit0,*loca, .    ; 00 01 FD
  48.     brclr    #bit0,*loca,2$    ; 01 01 FA
  49.     brset    #bit1,*loca,2$    ; 02 01 F7
  50.     brclr    #bit1,*loca,2$    ; 03 01 F4
  51.     brset    #bit2,*loca,2$    ; 04 01 F1
  52.     brclr    #bit2,*loca,2$    ; 05 01 EE
  53.     brset    #bit3,*loca,2$    ; 06 01 EB
  54.     brclr    #bit3,*loca,2$    ; 07 01 E8
  55.     brset    #bit4,*loca,2$    ; 08 01 E5
  56.     brclr    #bit4,*loca,2$    ; 09 01 E2
  57.     brset    #bit5,*loca,2$    ; 0A 01 DF
  58.     brclr    #bit5,*loca,2$    ; 0B 01 DC
  59.     brset    #bit6,*loca,2$    ; 0C 01 D9
  60.     brclr    #bit6,*loca,2$    ; 0D 01 D6
  61.     brset    #bit7,*loca,2$    ; 0E 01 D3
  62.     brclr    #bit7,*loca,2$    ; 0F 01 D0
  63.  
  64.     bset    #bit0,*locb    ; 10 02
  65.     bclr    #bit0,*locb    ; 11 02
  66.     bset    #bit1,*locb    ; 12 02
  67.     bclr    #bit1,*locb    ; 13 02
  68.     bset    #bit2,*locb    ; 14 02
  69.     bclr    #bit2,*locb    ; 15 02
  70.     bset    #bit3,*locb    ; 16 02
  71.     bclr    #bit3,*locb    ; 17 02
  72.     bset    #bit4,*locb    ; 18 02
  73.     bclr    #bit4,*locb    ; 19 02
  74.     bset    #bit5,*locb    ; 1A 02
  75.     bclr    #bit5,*locb    ; 1B 02
  76.     bset    #bit6,*locb    ; 1C 02
  77.     bclr    #bit6,*locb    ; 1D 02
  78.     bset    #bit7,*locb    ; 1E 02
  79.     bclr    #bit7,*locb    ; 1F 02
  80.  
  81. 3$:    bra    3$        ; 20 FE
  82.     brn    3$        ; 21 FC
  83.     bhi    3$        ; 22 FA
  84.     bls    3$        ; 23 F8
  85.     bcc    3$        ; 24 F6
  86.     bcs    3$        ; 25 F4
  87.     bne    3$        ; 26 F2
  88.     beq    3$        ; 27 F0
  89.     bhcc    3$        ; 28 EE
  90.     bhcs    3$        ; 29 EC
  91.     bpl    3$        ; 2A EA
  92.     bmi    3$        ; 2B E8
  93.     bmc    3$        ; 2C E6
  94.     bms    3$        ; 2D E4
  95.     bil    3$        ; 2E E2
  96.     bih    3$        ; 2F E0
  97.  
  98.  
  99.     .page
  100.  
  101.     neg    *locc        ; 30 03
  102. 4$:    cbeq    *locc,4$    ; 31 03 FD    HC08
  103.                 ; 32
  104.     com    *locc        ; 33 03
  105.     lsr    *locc        ; 34 03
  106.     sthx    *locc        ; 35 03        HC08
  107.     ror    *locc        ; 36 03
  108.     asr    *locc        ; 37 03
  109.     lsl    *locc        ; 38 03
  110.     rol    *locc        ; 39 03
  111.     dec    *locc        ; 3A 03
  112. 5$:    dbnz    *locc,5$    ; 3B 03 FD    HC08
  113.     inc    *locc        ; 3C 03
  114.     tst    *locc        ; 3D 03
  115.                 ; 3E
  116.     clr    *locc        ; 3F 03
  117.  
  118.     nega            ; 40
  119. 6$:    cbeqa    #0x21,6$    ; 41 21 FD    HC08
  120.     mul            ; 42        HC08
  121.     coma            ; 43
  122.     lsra            ; 44
  123.     ldhx    #0x21        ; 45 00 21    HC08
  124.     rora            ; 46
  125.     asra            ; 47
  126.     lsla            ; 48
  127.     rola            ; 49
  128.     deca            ; 4A
  129. 7$:    dbnza    7$        ; 4B FE        HC08
  130.     inca            ; 4C
  131.     tsta            ; 4D
  132.     mov    *loca,*locb    ; 4E 01 02    HC08
  133.     clra            ; 4F
  134.  
  135.     negx            ; 50
  136. 8$:    cbeqx    #0x21,8$    ; 51 21 FD    HC08
  137.     div            ; 52        HC08
  138.     comx            ; 53
  139.     lsrx            ; 54
  140.     ldhx    *loca        ; 55 01        HC08
  141.     rorx            ; 56
  142.     asrx            ; 57
  143.     lslx            ; 58
  144.     rolx            ; 59
  145.     decx            ; 5A
  146. 9$:    dbnzx    9$        ; 5B FE        HC08
  147.     incx            ; 5C
  148.     tstx            ; 5D
  149.     mov    *loca,x+    ; 5E 01        HC08
  150.     clrx            ; 5F
  151.  
  152.  
  153.     .page
  154.  
  155.     neg    locd,x        ; 60 04
  156. 10$:    cbeq    4,x+,10$    ; 61 04 FD    HC08
  157.     nsa            ; 62        HC08
  158.     com    locd,x        ; 63 04
  159.     lsr    locd,x        ; 64 04
  160.     cphx    #0x21        ; 65 00 21    HC08
  161.     ror    locd,x        ; 66 04
  162.     asr    locd,x        ; 67 04
  163.     lsl    locd,x        ; 68 04
  164.     rol    locd,x        ; 69 04
  165.     dec    locd,x        ; 6A 04
  166. 11$:    dbnz    locd,x,11$    ; 6B 04 FD    HC08
  167.     inc    locd,x        ; 6C 04
  168.     tst    locd,x        ; 6D 04
  169.     mov    #0x21,*loca    ; 6E 21 01    HC08
  170.     clr    locd,x        ; 6F 04
  171.  
  172.     neg    locd,s        ; 9E 60 04    HC08
  173. 12$:    cbeq    locd,s,12$    ; 9E 61 04 FC    HC08
  174.                 ; 9E 62        HC08
  175.     com    locd,s        ; 9E 63 04    HC08
  176.     lsr    locd,s        ; 9E 64 04    HC08
  177.                 ; 9E 65        HC08
  178.     ror    locd,s        ; 9E 66 04    HC08
  179.     asr    locd,s        ; 9E 67 04    HC08
  180.     lsl    locd,s        ; 9E 68 04    HC08
  181.     rol    locd,s        ; 9E 69 04    HC08
  182.     dec    locd,s        ; 9E 6A 04    HC08
  183. 13$:    dbnz    locd,s,13$    ; 9E 6B 04 FD    HC08
  184.     inc    locd,s        ; 9E 6C 04    HC08
  185.     tst    locd,s        ; 9E 6D 04    HC08
  186.                 ; 9E 6E        HC08
  187.     clr    locd,s        ; 9E 6F 04    HC08
  188.  
  189.     neg    ,x        ; 70
  190. 14$:    cbeq    ,x+,14$        ; 71 FE        HC08
  191.     daa            ; 72
  192.     com    ,x        ; 73
  193.     lsr    ,x        ; 74
  194.     cphx    *loca        ; 75 01        HC08
  195.     ror    ,x        ; 76
  196.     asr    ,x        ; 77
  197.     lsl    ,x        ; 78
  198.     rol    ,x        ; 79
  199.     dec    ,x        ; 7A
  200. 15$:    dbnz    ,x,15$        ; 7B FE        HC08
  201.     inc    ,x        ; 7C
  202.     tst    ,x        ; 7D
  203.     mov    ,x+,*loca    ; 7E 01        HC08
  204.     clr    ,x        ; 7F
  205.  
  206.  
  207.     .page
  208.  
  209.     rti            ; 80
  210.     rts            ; 81
  211.                 ; 82
  212.     swi            ; 83
  213.     tap            ; 84        HC08
  214.     tpa            ; 85        HC08
  215.     pula            ; 86        HC08
  216.     psha            ; 87        HC08
  217.     pulx            ; 88        HC08
  218.     pshx            ; 89        HC08
  219.     pulh            ; 8A        HC08
  220.     pshh            ; 8B        HC08
  221.     clrh            ; 8C        HC08
  222.                 ; 8D 
  223.     stop            ; 8E
  224.     wait            ; 8F
  225.  
  226. 16$:    bge    16$        ; 90 FE        HC08
  227.     blt    16$        ; 91 FC        HC08
  228.     bgt    16$        ; 92 FA        HC08
  229.     ble    16$        ; 93 F8        HC08
  230.     txs            ; 94        HC08
  231.     tsx            ; 95        HC08
  232.                 ; 96
  233.     tax            ; 97
  234.     clc            ; 98
  235.     sec            ; 99
  236.     cli            ; 9A
  237.     sei            ; 9B
  238.     rsp            ; 9C
  239.     nop            ; 9D 
  240.                 ; 9E
  241.     txa            ; 9F
  242.  
  243.                 
  244.     .page
  245.  
  246.     sub    #0x21        ; A0 21
  247.     cmp    #0x21        ; A1 21
  248.     sbc    #0x21        ; A2 21
  249.     cpx    #0x21        ; A3 21
  250.     and    #0x21        ; A4 21
  251.     bit    #0x21        ; A5 21
  252.     lda    #0x21        ; A6 21
  253.     ais    #0x21        ; A7 21        HC08
  254.     eor    #0x21        ; A8 21
  255.     adc    #0x21        ; A9 21
  256.     ora    #0x21        ; AA 21
  257.     add    #0x21        ; AB 21
  258.                 ; AC
  259. 17$:    bsr    17$        ; AD FE
  260.     ldx    #0x21        ; AE 21
  261.     aix    #0x21        ; AF 21        HC08
  262.  
  263.     sub    *loce        ; B0 05
  264.     cmp    *loce        ; B1 05
  265.     sbc    *loce        ; B2 05
  266.     cpx    *loce        ; B3 05
  267.     and    *loce        ; B4 05
  268.     bit    *loce        ; B5 05
  269.     lda    *loce        ; B6 05
  270.     sta    *loce        ; B7 05
  271.     eor    *loce        ; B8 05
  272.     adc    *loce        ; B9 05
  273.     ora    *loce        ; BA 05
  274.     add    *loce        ; BB 05
  275.     jmp    *loce        ; BC 05
  276.     jsr    *loce        ; BD 05
  277.     ldx    *loce        ; BE 05
  278.     stx    *loce        ; BF 05
  279.  
  280.     sub    ext        ; C0 01 23
  281.     cmp    ext        ; C1 01 23
  282.     sbc    ext        ; C2 01 23
  283.     cpx    ext        ; C3 01 23
  284.     and    ext        ; C4 01 23
  285.     bit    ext        ; C5 01 23
  286.     lda    ext        ; C6 01 23
  287.     sta    ext        ; C7 01 23
  288.     eor    ext        ; C8 01 23
  289.     adc    ext        ; C9 01 23
  290.     ora    ext        ; CA 01 23
  291.     add    ext        ; CB 01 23
  292.     jmp    ext        ; CC 01 23
  293.     jsr    ext        ; CD 01 23
  294.     ldx    ext        ; CE 01 23
  295.     stx    ext        ; CF 01 23
  296.  
  297.  
  298.     .page
  299.  
  300.     sub    ix2,x        ; D0 AB CD
  301.     cmp    ix2,x        ; D1 AB CD
  302.     sbc    ix2,x        ; D2 AB CD
  303.     cpx    ix2,x        ; D3 AB CD
  304.     and    ix2,x        ; D4 AB CD
  305.     bit    ix2,x        ; D5 AB CD
  306.     lda    ix2,x        ; D6 AB CD
  307.     sta    ix2,x        ; D7 AB CD
  308.     eor    ix2,x        ; D8 AB CD
  309.     adc    ix2,x        ; D9 AB CD
  310.     ora    ix2,x        ; DA AB CD
  311.     add    ix2,x        ; DB AB CD
  312.     jmp    ix2,x        ; DC AB CD
  313.     jsr    ix2,x        ; DD AB CD
  314.     ldx    ix2,x        ; DE AB CD
  315.     stx    ix2,x        ; DF AB CD
  316.  
  317.     sub    ix2,s        ; 9E D0 AB CD    HC08
  318.     cmp    ix2,s        ; 9E D1 AB CD    HC08
  319.     sbc    ix2,s        ; 9E D2 AB CD    HC08
  320.     cpx    ix2,s        ; 9E D3 AB CD    HC08
  321.     and    ix2,s        ; 9E D4 AB CD    HC08
  322.     bit    ix2,s        ; 9E D5 AB CD    HC08
  323.     lda    ix2,s        ; 9E D6 AB CD    HC08
  324.     sta    ix2,s        ; 9E D7 AB CD    HC08
  325.     eor    ix2,s        ; 9E D8 AB CD    HC08
  326.     adc    ix2,s        ; 9E D9 AB CD    HC08
  327.     ora    ix2,s        ; 9E DA AB CD    HC08
  328.     add    ix2,s        ; 9E DB AB CD    HC08
  329.                 ; 9E DC
  330.                 ; 9E DD
  331.     ldx    ix2,s        ; 9E DE AB CD    HC08
  332.     stx    ix2,s        ; 9E DF AB CD    HC08
  333.  
  334.     sub    ix1,x        ; E0 EF
  335.     cmp    ix1,x        ; E1 EF
  336.     sbc    ix1,x        ; E2 EF
  337.     cpx    ix1,x        ; E3 EF
  338.     and    ix1,x        ; E4 EF
  339.     bit    ix1,x        ; E5 EF
  340.     lda    ix1,x        ; E6 EF
  341.     sta    ix1,x        ; E7 EF
  342.     eor    ix1,x        ; E8 EF
  343.     adc    ix1,x        ; E9 EF
  344.     ora    ix1,x        ; EA EF
  345.     add    ix1,x        ; EB EF
  346.     jmp    ix1,x        ; EC EF
  347.     jsr    ix1,x        ; ED EF
  348.     ldx    ix1,x        ; EE EF
  349.     stx    ix1,x        ; EF EF
  350.  
  351.     sub    ix1,s        ; 9E E0 EF    HC08
  352.     cmp    ix1,s        ; 9E E1 EF    HC08
  353.     sbc    ix1,s        ; 9E E2 EF    HC08
  354.     cpx    ix1,s        ; 9E E3 EF    HC08
  355.     and    ix1,s        ; 9E E4 EF    HC08
  356.     bit    ix1,s        ; 9E E5 EF    HC08
  357.     lda    ix1,s        ; 9E E6 EF    HC08
  358.     sta    ix1,s        ; 9E E7 EF    HC08
  359.     eor    ix1,s        ; 9E E8 EF    HC08
  360.     adc    ix1,s        ; 9E E9 EF    HC08
  361.     ora    ix1,s        ; 9E EA EF    HC08
  362.     add    ix1,s        ; 9E EB EF    HC08
  363.                 ; 9E EC
  364.                 ; 9E ED
  365.     ldx    ix1,s        ; 9E EE EF    HC08
  366.     stx    ix1,s        ; 9E EF EF    HC08
  367.  
  368.     sub    ,x        ; F0
  369.     cmp    ,x        ; F1
  370.     sbc    ,x        ; F2
  371.     cpx    ,x        ; F3
  372.     and    ,x        ; F4
  373.     bit    ,x        ; F5
  374.     lda    ,x        ; F6
  375.     sta    ,x        ; F7
  376.     eor    ,x        ; F8
  377.     adc    ,x        ; F9
  378.     ora    ,x        ; FA
  379.     add    ,x        ; FB
  380.     jmp    ,x        ; FC
  381.     jsr    ,x        ; FD
  382.     ldx    ,x        ; FE
  383.     stx    ,x        ; FF
  384.  
  385.  
  386.     .page
  387.  
  388. 18$:    jsr    *begin        ; BD __
  389.     jmp    *begin        ; BC __
  390.     sub    *begin        ; B0 __
  391.  
  392.     .area    AS6808B
  393.  
  394. 19$:    jsr    1$        ; CD __ __
  395. 20$:    jmp    1$        ; CC __ __
  396. 21$:    sub    1$        ; C0 __ __
  397.  
  398.